perm filename TEST0.MF[CM,DEK]2 blob sn#794082 filedate 1985-05-23 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00013 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002
C00004 00003	cmchar "The letter C"
C00008 00004	cmchar "The letter a"
C00013 00005
C00017 00006
C00021 00007
C00025 00008
C00029 00009
C00033 00010
C00038 00011
C00042 00012
C00043 00013
C00044 ENDMK
CāŠ—;
cmchar "The letter C";
if serifs: beginchar("C",13u#,cap_height#,0);
 italcorr cap_height#*slant-.5u#;
 adjust_fit(0,0);
 pickup fine.nib; penpos1(cap_hair-fine,0); penpos2(cap_band-fine,90);
 penpos3(cap_curve-fine,180); penpos4(cap_band-fine,270);
 penpos5(hair-fine,360);
 rt x1r=rt x5r=round(w-u); lft x3r=round u; x2=x4=.55[x3,x1];
 top y2r=h+o; bot y4r=-o; y3=.5[y2,y4];
 bot y1=round max(.6h,x_height-.5fine); y5=good.y .95(h-y1);
 (x2l',y2l)=whatever[z2r,z1l]; x2l:=x2l';
 (x4l',y4l)=whatever[z4r,z5l]; x4l:=x4l';
 filldraw stroke z1e{x2-x1,10(y2-y1)}
  ..z2e{left}&pulled_super_arc.e(2,3)(superpull)
  & pulled_super_arc.e(3,4)(superpull)&z4e{right}..{up}z5e; % arc
 x6=x1r; top y6=h+o; x1r-x1'=cap_curve-fine; y1'=y1;
 path upper_arc; upper_arc=z1{x2-x1,10(y2-y1)}..z2{left};
 numeric t; t=xpart(upper_arc intersectiontimes (z6..z1'));
 filldraw z1r--z6--subpath(t,0) of upper_arc--cycle; % barb
else: beginchar("C",11.5u#,cap_height#,0);
 italcorr cap_height#*slant-.5u#;
 adjust_fit(0,0);
 pickup fine.nib; penpos1(1.1flare-fine,90); penpos2(slab-fine,90);
 penpos3(cap_curve-fine,180); penpos4(slab-fine,270);
 penpos5(flare-fine,270);
 rt x1r=round(w-1.25u); x2=x4=.5w+1.25u;
 lft x3r=round max(u,2u-.5cap_curve); rt x5l=round(w-u);
 top y1r=round .95h+o; top y2r=h+o; y3=.5h; bot y4r=-o; bot y5r=round .07h-o;
 (x5r',y5r)=whatever[z5l,(w,h)]; x5r:=good.x x5r';
 filldraw stroke z1e..tension.9..z2e{left}&super_arc.e(2,3)
  & super_arc.e(3,4) & z4e{right}..z5e; fi % arc and terminals
math_fit(-.3cap_height#*slant-.5u#,.5ic#); penlabels(1,1',2,3,4,5,6); endchar;
cmchar "The letter a";
beginchar("a",9u#,x_height#,0);
italcorr 1/3[bar_height#,x_height#]*slant+.5stem#-serif_fit#-2u#;
adjust_fit(0,serif_fit#);
pickup fine.nib; top y3r=h+round 1.5oo;
if serifs: penpos1(flare-fine,180); penpos2(hair-fine,180);
 penpos3(vair-fine,90);  lft x1r=round max(u,2.1u-.5flare); x3=.5w-.5u;
 y1=min(bar_height+.5flare+2vair+2,.9[bar_height,h]-.5flare);
 bulb(3,2,1);	% bulb
else: penpos1(5/7[vair,flare]-fine,95); x1l=good.x 1.5u; x1r:=good.x x1r;
 penpos3(1/8[vair,fine.breadth]-fine,90);
 x3=.5w-.2u; top y1r=round(.8[bar_height+fine,top y3r]);
 filldraw stroke z1e..tension 1 and .9..{right}z3e; fi	% terminal
penpos4(stem-fine,0); rt x4r=round(w-2.5u+.5stem); y4=1/3[bar_height,h];
penpos5(stem-fine,0); x5=x4; y5=max(.55bar_height,2vair);
filldraw stroke super_arc.e(3,4)&z4e..z5e;	% arc and stem
penpos6(.3[fine.breadth,vair]-fine,90); x6=x4; bot y6=bar_height;
penpos7(round(curve-2stem_corr)-fine,180);
lft x7r=round max(.5u,1.5u-.5curve); y7=1/3[top y8l,top y6r];
penpos8(vair-fine,270); x8l=.5w-.75u; bot y8r=-oo;
penpos9(3epsilon,360); z9l=z5l;
(x,y8r)=whatever[z8l,z9l]; x8r:=max(x,.5[x7r,x8]);
{{interim superness:=more_super;
 filldraw stroke z9e{down}...z8e{left}...{up}z7e&super_arc.e(7,6)}}; % bowl
if serifs: numeric shaved_stem; shaved_stem=round(stem-3stem_corr);
 if hair#+.5stem#>1.5u#: pickup tiny.nib;
  penpos5'(shaved_stem-tiny,0); rt x5'r=fine.rt x5r; y5'=y5;
  penpos10(shaved_stem-tiny,0); x10=x5'; y10=.2[.5tiny,bar_height];
  penpos11(shaved_stem-tiny,0); rt x11r=round(w-.25u); bot y11=0;
  filldraw stroke z5'e---z10e...z11e{right};	% foot
 else: pickup crisp.nib;
  penpos5'(shaved_stem-crisp,0); rt x5'r=fine.rt x5r; y5'=y5;
  penpos10(shaved_stem-crisp,0); x10=x5'; y10=1/3bar_height;
  penpos11(.2[vair,stem]-crisp,90); x11r=.5[x10r,x12r]; bot y11l=-round .5oo;
  penpos12(hair-crisp,180); rt x12l=round(w-.1u); y12=max(y10,y11+vair);
  penpos13(hair-crisp,180); x13=x12; top y13=max(round .6bar_height,top y12);
  (x',y11l)=whatever[z11r,z12r]; x11l:=max(x',x10);
  filldraw stroke z5'e---z10e...z11e{right}...z12e---z13e; fi	% hook
else: numeric shaved_stem; shaved_stem=round(stem-stem_corr); pickup tiny.nib;
 penpos5'(shaved_stem-tiny,0); rt x5'r=fine.rt x5r; y5'=y5;
 penpos10(shaved_stem-tiny,0); x10=x5'; bot y10=0;
 filldraw stroke z5'e--z10e; fi	% base of stem
penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); endchar;